* gnus-sync.el (gnus-sync-newsrc-offsets): Restore definition.
authorAndreas Schwab <schwab@linux-m68k.org>
Sun, 2 Dec 2012 10:55:08 +0000 (11:55 +0100)
committerAndreas Schwab <schwab@linux-m68k.org>
Sun, 2 Dec 2012 10:55:08 +0000 (11:55 +0100)
(gnus-sync-save): Use correct format for gnus-sync-newsrc-loader.

lisp/gnus/ChangeLog
lisp/gnus/gnus-sync.el

index e85d96d843429344022aafb19cda8eec0cd53476..6d328b3ac4b0f9a170420f29d13652485d5e3c70 100644 (file)
@@ -1,3 +1,8 @@
+2012-12-02  Andreas Schwab  <schwab@linux-m68k.org>
+
+       * gnus-sync.el (gnus-sync-newsrc-offsets): Restore definition.
+       (gnus-sync-save): Use correct format for gnus-sync-newsrc-loader.
+
 2012-11-16  Jan Tatarik  <jan.tatarik@gmail.com>
 
        * gnus-score.el (gnus-score-body):
index b5f8379e3679cc6902585bc9284b0bda1d7bcd55..c235892a9d3510ac0734033eb5f3075f9ce06a70 100644 (file)
@@ -109,6 +109,12 @@ this setting is harmless until the user chooses a sync backend."
   :group 'gnus-sync
   :type '(repeat regexp))
 
+(defcustom gnus-sync-newsrc-offsets '(2 3)
+  "List of per-group data to be synchronized."
+  :group 'gnus-sync
+  :type '(set (const :tag "Read ranges" 2)
+              (const :tag "Marks" 3)))
+
 (defcustom gnus-sync-global-vars nil
   "List of global variables to be synchronized.
 You may want to sync `gnus-newsrc-last-checked-date' but pretty
@@ -743,7 +749,15 @@ With a prefix, FORCE is set and all groups will be saved."
     ;; entry in gnus-newsrc-alist whose group matches any of the
     ;; gnus-sync-newsrc-groups
     ;; TODO: keep the old contents for groups we don't have!
-    (let ((gnus-sync-newsrc-loader (gnus-sync-newsrc-loader-builder)))
+    (let ((gnus-sync-newsrc-loader
+          (loop for entry in (cdr gnus-newsrc-alist)
+                when (gnus-grep-in-list
+                      (car entry)     ;the group name
+                      gnus-sync-newsrc-groups)
+                collect (cons (car entry)
+                              (mapcar (lambda (offset)
+                                        (cons offset (nth offset entry)))
+                                      gnus-sync-newsrc-offsets)))))
       (with-temp-file gnus-sync-backend
         (progn
           (let ((coding-system-for-write gnus-ding-file-coding-system)